|
参照(さんしょう、、リファレンス)は、他の場所にあるデータを指している情報を含む小さなオブジェクトであり、それ自身の中に(指している)データ自体を含まない。参照の指す値を取り出すことをデリファレンス (dereference)と呼ぶ(間接参照も参照)。参照は様々なデータ構造を構成する基本要素であり、プログラム内の各部で情報をやり取りするための基本でもある。 なお、C++には、参照型というものがあるが、以下で説明するのはC++のそれではなく、一般概念である。C++の参照については、ポインタ (プログラミング)#参照を参照のこと。 == 住所を使った例え話 == 参照は家の住所に似ている。住所は非常に小さな識別子であり、それが指しているモノにはさらに豊富な情報があるだろう。例えば、その家を見れば色がわかるが、住所だけでは色はわからない。住所は単に家を見つけることを可能にするだけである。しかし、もし家の色が知りたければ、住所さえあれば見つけ出して実際にその家を見ればよい。つまり、住所は家の色を知るための充分な情報源となる。住所から家を探すことは、参照をデリファレンスすることに似ている。 もっと複雑な例として、引越しの度に新しい家の住所を古い家に残しておくとする。誰かが最初の家を訪ねると、置いてある住所から次の家へ次の家へとたどっていき最終的に現在の家にたどり着くことができる。これは参照を使用した単純な線形リストに似ている。 住所の別の利点は、それが実際の家よりもずっと扱いやすいことである。例えば、町内の人々を姓の五十音順に並べたいとしよう。ひとつの方法として、巨大なクレーンを使って町内の家を全部物理的に並べ替える方法がある。もっと簡単な方法としては、町内の人たちの住所のリストを作り、姓の五十音順にそれを並べ替えるという方法がある。参照にも同様の利点がある。データへの参照を操作することによってデータ自体を変更することなく様々なことができるし、場合によってはその方が効率的である。 日常生活は参照の例であふれている。電話番号、電子メールアドレス、URLなどなど。いずれも遠隔にあるリソースを指し、それらへのアクセスを可能とする。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「参照 (情報工学)」の詳細全文を読む スポンサード リンク
|